/*
 * index.css
 * Copyright (C) 2019 CaptainInPHW
 *
 * Distributed under terms of the MIT license.
 */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  --blue: #0084ff;
  --black: #333333;
  --gray: #666666;
}

html,
body {
  width: 100%;
  height: 100%;
  color: var(--black);
  background-color: #f7f7f7;
}

.resume-wrapper {
  width: 816px;
  margin: 50px auto;
  padding: 100px 90px;
  background-color: #ffffff;
  box-shadow: 0 10px 20px 0 rgba(236, 236, 236, 0.86);

  #resume {
    width: 100%;
    height: 100%;
  }

  .divider {
    height: 2px;
    width: 150px;
    margin: 50px auto;
    background-color: rgba(0, 0, 0, 0.1);
  }

  h1.section-title {
    margin: 20px 0;
    border-bottom: 2px solid var(--black);
  }

  h4 {
    display: flex;
    margin: 20px 0 10px;
    align-items: flex-end;
    justify-content: space-between;
    span.employment-period {
      font-size: 12px;
      color: var(--gray);
      font-style: italic;
    }
  }

  p.description {
    font-size: 12px;
    color: var(--gray);
    margin-bottom: 10px;
  }

  span.highlight {
    color: var(--blue);
  }

  a {
    color: var(--blue);
  }

  #self-description {
    p {
      font-size: 14px;
    }
    ul {
      margin: 15px;
      font-size: 14px;
      li {
        margin: 5px 0;
      }
    }
  }

  #personal-info {
    text-align: center;
    .name {
      font-size: 36px;
    }
    .job {
      font-size: 12px;
      color: var(--blue);
      padding-bottom: 10px;
    }
    .school {
      padding: 5px 0;
      font-size: 14px;
      list-style: none;
      font-weight: bold;
      color: var(--gray);
      display: inline-flex;
      li {
        padding-right: 8px;
        &:not(:first-child)::before {
          content: '·';
          font-size: 20px;
          padding-right: 8px;
          vertical-align: middle;
        }
      }
    }
    .contact {
      display: flex;
      font-size: 12px;
      list-style: none;
      justify-content: center;
      li {
        padding-right: 12px;
        &:not(:first-child)::before {
          content: '|';
          font-size: 12px;
          padding-right: 12px;
          vertical-align: baseline;
        }
      }
    }
    .motto {
      padding: 30px 0;
      text-align: center;
      color: var(--gray);
      font-style: italic;
    }
  }

  #skills {
    ul {
      margin-left: 30px;
      li {
        font-size: 14px;
        margin: 5px 0;
      }
    }
  }

  #CV {
    h4 {
      display: flex;
      margin: 20px 0 10px;
      align-items: flex-end;
      justify-content: space-between;
      .employment-period {
        font-size: 12px;
        color: var(--gray);
        font-style: italic;
      }
    }
  }

  #projects {
    ul {
      font-size: 12px;
      margin-left: 15px;
      li {
        margin: 3px 0;
      }
    }
  }

  #self-works {
    p {
      font-size: 14px;
    }
  }
}

@media print {
  html,
  body {
    background-color: #fff;
  }
  .resume-wrapper {
    box-shadow: none;
  }
  #CV {
    page-break-after: always;
  }
  #projects {
    margin-top: 100px;
  }
}
